package com.skzh.drawtask.mapper;

import com.skzh.drawtask.domain.TaskSurface;
import com.skzh.drawtask.domain.TaskSurfacePoints;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author zr
 * @Description
 * @Date 2025/3/31 13:38
 */
public interface SurfaceMapper {

    /**
     * 新增面任务
     */
    int insertTaskSurface(TaskSurface taskSurface);

    /**
     * 批量插入面顶点
     */
    int batchInsertTaskLinePoints(List<TaskSurfacePoints> points);

    /**
     * 根据ID删除面任务
     */
    void deleteTaskSurfaceById(Long id);

    /**
     * 根据id批量删除面对应的顶点信息
     */
    void deleteTaskSurfacePointsBySurfaceId(Long id);

    /**
     * 查询面任务
     */
    List<TaskSurface> selectTaskSurfaceList(TaskSurface taskSurface);

    /**
     * 根据ID批量查询对应面的顶点信息
     */
    List<TaskSurfacePoints> selectTaskSurfacePointsByIds(List<Long> surfaceIds);

    /**
     * 根据ID批量删除面任务
     *
     * */
    void deleteTaskSurfaceByIds(@Param("ids")List<Long> ids);
}
